Rate of penetration optimization for wellbores using machine learning

ABSTRACT

A system and method for controlling a drilling tool inside a wellbore makes use of projection of optimal rate of penetration (ROP) and optimal controllable parameters such as weight-on-bit (WOB), and rotations-per-minute (RPM) for drilling operations. Optimum controllable parameters for drilling optimization can be predicted using a data generation model to produce synthesized data based on model physics, an ROP model, and stochastic optimization. The synthetic data can be combined with real-time data to extrapolate the data across the WOB and RPM space. The values for WOB an RPM can be controlled to steer a drilling tool. Examples of models used include a non-linear model, a linear model, a recurrent generative adversarial network (RGAN) model, and a deep neural network model.

TECHNICAL FIELD

The present disclosure relates generally to devices for use in wellsystems. More specifically, but not by way of limitation, thisdisclosure relates to real-time automated closed-loop control of adrilling tool during the drilling of a wellbore.

BACKGROUND

A well (e.g., an oil or gas well) includes a wellbore drilled through asubterranean formation. The conditions inside the subterranean formationwhere the drill bit is passing when the wellbore is being drilledcontinuously change. For example, the formation through which a wellboreis drilled exerts a variable force on the drill bit. This variable forcecan be due to the rotary motion of the drill bit, the weight applied tothe drill bit, and the friction characteristics of each strata of theformation. A drill bit may pass through many different materials (e.g.,rock, sand, shale, clay, etc.) in the course of forming the wellbore andadjustments to various drilling parameters are sometimes made during thedrilling process by a drill operator to account for observed changes.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a cross-sectional view of an example of a well system thatincludes a system for steering a drilling tool according to someaspects.

FIG. 2 is a schematic diagram of a system for steering a drilling toolaccording to some aspects.

FIG. 3 is a block diagram of a computing system for steering a drillingtool according to some aspects.

FIG. 4 is an example of a flowchart of a process for steering a drillingtool according to some aspects.

FIG. 5 is a graph comparing actual and projected values of rate ofpenetration using a non-linear rate of penetration model according tosome aspects.

FIG. 6 is a graph comparing actual and projected values of rate ofpenetration using a deep neural network rate of penetration modelaccording to some aspects.

FIG. 7 is a table illustrating combined data including synthetic andreal-time data according to some aspects.

DETAILED DESCRIPTION

Certain aspects and features relate to a process that improves, andmakes more efficient, the projection of optimal rate of penetration(ROP) and optimal controllable parameters, such as weight-on-bit (WOB)and rotations-per-minute (RPM), for drilling operations. The optimumcontrollable parameters can be computed, and the parameters can beutilized for real-time, closed-loop control and automation of a drillingtool.

Optimum controllable parameters for drilling optimization can bepredicted using a data generation model to produce synthesized databased on model physics, an ROP model, model training, and stochasticoptimization. The synthetic data can be combined with real-time data toextrapolate the data across the WOB and RPM variable space. The data canbe used for teaching a model. The trained model can be used in anoptimizer to provide an optimized ROP. This information can be helpfulin advising, in real time, the optimum controllable parameters fordrilling.

A method of operating a drilling tool according to some aspects includesgenerating synthetic data about rate of penetration (ROP), weight-on-bit(WOB), and rotations-per-minute (RPM) using real-time data associatedwith the drilling tool and combining the synthetic data with thereal-time data to form combined data. The combined data is used to teachan ROP model and produce a trained ROP model. A value for ROP isprojected using stochastic optimization of the trained ROP model.Corresponding values for WOB and RPM are also projected using thetrained ROP model. The values for WOB and RPM are controlled to steer adrilling tool. Examples of an ROP model include a non-linear model, alinear model, a recurrent generative adversarial network (RGAN) model,and a deep neural network model.

FIG. 1 is a cross-sectional side view of an example of a well system 100according to some aspects. The well system 100 includes a wellbore 102extending through a hydrocarbon bearing subterranean formation 104. Inthis example, the wellbore 102 is vertical, but in other examples thewellbore 102 can additionally or alternatively be horizontal ordeviated.

In this example, the wellbore 102 includes a casing string 106 (e.g., ametal casing) extending from the well surface 108 into the subterraneanformation 104. The casing string 106 can provide a conduit via whichformation fluids, such as production fluids produced from thesubterranean formation 104, can travel from the wellbore 102 to the wellsurface 108. In other examples, the wellbore 102 can lack the casingstring 106.

The wellbore 102 can include a drilling tool 114 for extending thewellbore 102. Additional tools can also be included, such as a safetytool, valve tool, packer tool, monitoring tool, formation testing tool,a logging-while-drilling tool, or any combination of these. In someexamples, a tool is deployed in the wellbore 102 using a wireline 110,slickline, or coiled tube, which can be wrapped around a winch 118 orpulley at the well surface 108.

The well system 100 also includes a computing device 112. The computingdevice 112 can be positioned at the well surface 108 or elsewhere (e.g.,offsite). The computing device 112 may be in communication with thedrilling tool 114, a sensor, or another electronic device. For example,the computing device 112 can have a communication interface fortransmitting information to and receiving information from anothercommunication interface 116 of the drilling tool 114.

In some examples, the computing device 112 can receive information fromdownhole (or elsewhere) in substantially real time, which can bereferred to as real-time data. The real time data can includeinformation related to the well system 100. For example, the drillingtool 114 can stream real-time data to the computing device 112, wherethe real-time data includes information about the orientation orlocation of the drilling tool 114 in the wellbore 102, or the ROP, WOB,or RPM for the drilling tool 114 through the wellbore 102. The computingdevice 112 can use the real-time data at least in part to teach an ROPmodel, which a well operator may use to determine one or morecontrollable parameters for performing an operation in the well system100. For example, the computing device 112 can use the real-time data toteach a model that can be optimized to provide a predicted ROP for thedrilling tool 114 through the subterranean formation 104 and predictedcontrollable parameters to be applied to drilling tool 114. A morespecific example of the computing device 112 is described in greaterdetail below with respect to FIG. 3 .

FIG. 2 is a schematic diagram of an example of a system 200 for steeringa drilling tool along projected path 202 of a wellbore being extended bythe drilling tool. System 200 includes an optimizer 204 that can beexecuted by a processor to control the drilling tool connected byapplying a stochastic optimization using real-time data received at eachiteration, 206 a, 206 b, and 206 c. Each iteration corresponds to adrilling sequence and drilling sequences occur at a plurality ofmeasured depths. Optimizer 204 can be subject to range constraintsdictated by engineering constraints. Range constraints can come, forexample, from disruptive resonances in the drillstring at certain RPMsthat need to be avoided. Also, the rate of penetration of the drillingtool may not exceed that which creates the maximum amount of debris thatcan be removed from the wellbore by fluid pumping in at a specifiedamount of time. Optimizer 204 produces values for controllableparameters that can be applied to the drilling tool by optimizing an ROPmodel 212. Optimizer 204 and ROP model 212 are, in this example,included in computing device 112 of FIG. 1 . Such controllableparameters include drill bit speed (here in units of RPM) 220 and WOB222.

FIG. 3 depicts a block diagram of a computing device 112 according toone example. The computing device 112 includes a processing device 302,a bus 304, a communication interface 306, a non-transitory memory device308, a user input device 324, and a display device 326. In someexamples, some or all of the components shown in FIG. 3 can beintegrated into a single structure, such as a single housing. In otherexamples, some or all of the components shown in FIG. 3 can bedistributed (e.g., in separate housings) and in communication with eachother.

The processing device 302 can execute one or more operations foroptimizing parameters for controlling a drilling tool. The processingdevice 302 can execute instructions stored in the memory device 308 toperform the operations. The processing device 302 can include oneprocessing device or multiple processing devices. Non-limiting examplesof the processing device 302 include a Field-Programmable Gate Array(“FPGA”), an application-specific integrated circuit (“ASIC”), amicroprocessing device, etc.

The processing device 302 is communicatively coupled to the memorydevice 308 via the bus 304. The non-volatile memory device 308 mayinclude any type of memory device that retains stored information whenpowered off. Non-limiting examples of the memory device 308 includeelectrically erasable and programmable read-only memory (“EEPROM”),flash memory, or any other type of non-volatile memory. In someexamples, at least some of the memory device 308 can include a mediumfrom which the processing device 302 can read instructions. Anon-transitory computer-readable medium can include electronic, optical,magnetic, or other storage devices capable of providing the processingdevice 302 with computer-readable instructions or other program code.Non-limiting examples of a non-transitory computer-readable mediuminclude (but are not limited to) magnetic disk(s), memory chip(s),read-only memory (ROM), random-access memory (“RAM”), an ASIC, aconfigured processing device, optical storage, or any other medium fromwhich a computer processing device can read instructions. Theinstructions can include processing device-specific instructionsgenerated by a compiler or an interpreter from code written in anysuitable computer-programming language, including, for example, C, C++,C#, etc.

In the example of FIG. 3 , the memory device 308 includes real-time data310. The real-time data 310 can be communicated to the computing device112 from one or more well tools or sensors positioned in one or morewellbores. The memory device 308 also includes a data-conditioningmodule 311 that can condition or filter the real-time data 310 prior tothe real-time data 310 being further processed. The memory device 308includes a data generation model 312. The data generation model 312 canbe a software application for generating synthetic data for using inoptimizing parameters for controlling a wellbore. The data created bythe data generation model 312 can be stored as the synthetic data 314 inthe memory device 308. The memory device 308 includes combined data 316,which can be a combination of the synthetic data 314 and the real-timedata 310. An example of the combined data 316 is shown in chart form inFIG. 7 , wherein “WOBRPM” is the product of WOB and RPM.

Continuing with FIG. 3 , the memory device 308 includes the ROP model212, also shown in FIG. 2 . The ROP model 212 can be a softwareapplication for optimizing a rate of penetration for a drillingoperation. The generated data from the data generation model 312 can beused to teach the ROP model 212. In some examples, the data generationmodel 312 and the ROP model 212 are each a deep neural network modelwith three hidden layers and seventeen nodes in each of the chosenlayers. The data generation model and the ROP model can in otherexamples be linear, non-linear, or an RGAN model. In one example, anon-linear model can be used for the example of data in FIG. 5 . Inanother example, the deep neural network model can be used for theexample of data in FIG. 6 .

Additionally or alternatively, the memory device 308 includes theoptimizer 204, also shown in FIG. 2 . The optimizer 204 can be asoftware application for performing stochastic Bayesian optimization ofan ROP objective function built to obtain optimum values forcontrollable parameters such as WOB and RPM. Results from the optimizercan be stored as output values 322 in the memory device 308. The outputscan be applied to a drilling tool by control module 340, which isexecutable by the processing device to steer the drilling tool.

In some examples, the computing device 112 includes a communicationinterface 306. The communication interface 306 can represent one or morecomponents that facilitate a network connection or otherwise facilitatecommunication between electronic devices. Examples include, but are notlimited to, wired interfaces such as Ethernet, USB, IEEE 1394, and/orwireless interfaces such as IEEE 802.11, Bluetooth, near-fieldcommunication (NFC) interfaces, RFID interfaces, or radio interfaces foraccessing cellular telephone networks (e.g., transceiver/antenna foraccessing a CDMA, GSM, UMTS, or other mobile communications network).

In some examples, the computing device 112 includes a user input device324. The user input device 324 can represent one or more components usedto input data. Examples of the user input device 324 can include akeyboard, mouse, touchpad, button, or touch-screen display, etc.

In some examples, the computing device 112 includes a display device326. The display device 326 can represent one or more components used tooutput data. Examples of the display device 326 can include aliquid-crystal display (LCD), a television, a computer monitor, atouch-screen display, etc. In some examples, the user input device 324and the display device 326 can be a single device, such as atouch-screen display.

By using real-time field data to generate synthetic data and teach theROP model, and optimizing predictions from the ROP model using rangeconstraints, drilling control operations can be enhanced. FIG. 4 is anexample of a flowchart of a process 400 for automated real-time steeringof a drilling tool during formation or extension of a wellbore byoptimizing predictions from the ROP model described in FIG. 2 and FIG. 3. At block 402 of process 400 processing device 302 generates syntheticdata 314 regarding ROP, WOB, and RPM using non-linear, linear, RGAN, ordeep neural network data generation model. The data generation model 312has the ability to utilize real-time data as inputs and the model isultimately taught (trained). An example of a deep neural network datageneration model is a long short-term memory (LSTM) model. An example ofa non-linear model is a model that takes the form:ROP=K(WOB*RPM)^(α)where K is a constant.

At block 404 of process 400, the synthetic data 314 and real-time data310 are combined by processing device 302 to form combined data 316 forROP, WOB, and RPM. Combining the real-time and synthetic data allowstraining and optimization with data that is more extensive than might bepossible if using real-time data alone, since it is not always possibleto obtain real-time data across a full data value range in a reasonableamount of time. It is possible in some situations that optimal values donot occur within the domain of real-time data obtained. In such a case,optimal values can be found in the synthetic data since the syntheticdata includes points corresponding to data values outside the real-timedata points. Combining real-time data with synthetic data ensuresoptimal values will be within the range of available data.

At block 406 of FIG. 4 , the data generated in block 404 is used toteach the ROP model for an objective function needed for optimization.Processing device 302 teaches ROP model 212 using the combined data 316for training. As in the case of the data generation model, the ROP model212 can be non-linear, linear, organized as an RGAN model, deep neuralnetwork model such as an LSTM model. In some examples, a deep neuralnetwork model includes multiple hidden layers and each hidden layerincludes a plurality of nodes. In one example, a deep neural networkmodel with 3 hidden layers with 17 nodes in each of the layers is used.

Still referring to FIG. 4 , at block 408, processing device 302stochastically optimizes the trained ROP model to project a value forROP for a drilling sequence at depth. In one example, Bayesianoptimization is used. An ROP objective function is built by processingdevice 302 is used at block 409 to produce optimum values for WOP andRPM corresponding to the projected ROP. At block 410, the drilling tool114 is controlled by processing device 302 to obtain the projected valuefor ROP by influencing RPM and WOB. If the wellbore is still beingformed at block 412 and another drilling sequence is needed for anadditional depth, processing returns to block 402 and the processdescribed above is repeated. Otherwise, the process 400 continues tofurther drilling, completion, or production operations at block 414.

FIG. 5 is an example graph 500 comparing actual and predicted values ofrate of penetration using a non-linear ROP model according to someaspects. Actual values are indicated by line 502 and predicted valuesare indicated by line 504.

FIG. 6 is an example graph 600 comparing actual and predicted values ofrate of penetration using a deep neural network model with three hiddenlayers and 17 nodes in each of the layer. In this example, a learningrate of 0.0002 and a momentum optimizer were chosen. The model-predictedvalues and actual values are illustrated with respect to the examplegraph 600, but are almost indistinguishable except for the area betweensequence 5000 and sequence 6000. In this area, the higher projectedvalues are above the actual values by an amount 602.

FIG. 7 is a table 700 illustrating example combined data according tosome aspects. The example synthetic data 702 and the example real-timedata 704 are combined as described above for teaching the non-linearmodel discussed. WOBRPM is the product of WOB*RPM.

In some aspects, systems, devices, and methods for ROP optimization forcontrolling a drilling tool are provided according to one or more of thefollowing examples. As used below, any reference to a series of examplesis to be understood as a reference to each of those examplesdisjunctively (e.g., “Examples 1-4” is to be understood as “Examples 1,2, 3, or 4”).

Example #1: A system includes a drilling tool, and a computing device incommunication with the drilling tool. The computing device includes anon-transitory memory device comprising instructions that include a datageneration model that is executable by the computing device to generatesynthetic data about rate of penetration, weight-on-bit, androtations-per-minute using real-time data associated with the drillingtool, and to combine the synthetic data with the real-time data to formcombined data. The instructions also include a rate of penetration modelthat is teachable using the combined data and that is executable by thecomputing device to use stochastic optimization to project a value forthe rate of penetration per drilling sequence using range constraintsand to project corresponding values for weight-on-bit androtations-per-minute. The instructions also include a control modulethat is executable by the computing device to steer the drilling toolusing corresponding values for at least one of the weight-on-bit or therotations-per-minute.

Example #2: The system of example 1 wherein the synthetic data includespoints whose values are outside of the real-time data point values.

Example #3: The system of example(s) 1 or 2 wherein at least one of thedata generation model or the rate of penetration model comprises alinear model or a non-linear model.

Example #4: The system of example(s) 1-3 wherein at least one of thedata generation model or the rate of penetration model comprises arecurrent generative adversarial network (RGAN).

Example #5: The system of example(s) 1-4 wherein at least one of thedata generation model or the rate of penetration model comprises a deepneural network model including a plurality of hidden layers, each hiddenlayer comprising a plurality of nodes.

Example #6: The system of example(s) 1-5 wherein the deep neural networkmodel includes 17 hidden layers, each comprising 3 nodes.

Example #7: The system of example(s) 1-6 wherein the stochasticoptimization comprises Bayesian optimization and wherein the drillingtool is steered by controlling the drilling tool to obtain the value ofthe rate of penetration by influencing the corresponding values forweight-on-bit and rotations-per-minute.

Example #8: A method of operating a drilling tool, the method includesgenerating synthetic data about rate of penetration, weight-on-bit, androtations-per-minute using real-time data associated with the drillingtool and combining the synthetic data with the real-time data to formcombined data. The method also includes teaching a rate of penetrationmodel using the combined data to produce a trained rate of penetrationmodel, projecting a value for the rate of penetration per drillingsequence using stochastic optimization of the trained rate ofpenetration model subject to range constraints, projecting correspondingvalues for weight-on-bit and rotations-per-minute using the trained rateof penetration model, and steering the drilling tool using thecorresponding values for at least one of the weight-on-bit or therotations-per-minute.

Example #9: The method of example 8 wherein the synthetic data includespoints whose values are outside of the real-time data point values.

Example #10: The method of example(s) 8 or 9 wherein the trained rate ofpenetration model comprises a linear model or a non-linear model.

Example #11: The method of example(s) 8-10 wherein the trained rate ofpenetration model comprises a recurrent generative adversarial network(RGAN).

Example #12: The method of example(s) 8-11 wherein the trained rate ofpenetration model comprises a deep neural network model including aplurality of hidden layers, each hidden layer comprising a plurality ofnodes.

Example #13: The method of example(s) 8-12 wherein the deep neuralnetwork model includes 17 hidden layers, each comprising 3 nodes.

Example #14: The method of example(s) 8-13 wherein the stochasticoptimization comprises Bayesian optimization and wherein the drillingtool is steered by controlling the drilling tool to obtain the value ofthe rate of penetration by influencing the corresponding values forweight-on-bit and rotations-per-minute.

Example #15: The method of example(s) 8-14 further comprising repeatingthe teaching of the rate of penetration model, the projecting of thevalue for the rate of penetration per drilling sequence, and theprojecting of corresponding values for weight-on-bit androtations-per-minute for each of a plurality of measured depths.

Example #16: A non-transitory computer-readable medium that includesinstructions that are executable by a processing device for causing theprocessing device to perform the method of example(s) 8-15.

The foregoing description of certain examples, including illustratedexamples, has been presented only for the purpose of illustration anddescription and is not intended to be exhaustive or to limit thedisclosure to the precise forms disclosed. Numerous modifications,adaptations, and uses thereof will be apparent to those skilled in theart without departing from the scope of the disclosure.

What is claimed is:
 1. A system comprising: a drilling tool; and acomputing device in communication with the drilling tool, the computingdevice including a non-transitory memory device comprising instructionsthat include: a data generation model that is executable by thecomputing device to generate synthetic data for rate of penetration,weight-on-bit, and rotations-per-minute using real-time data associatedwith the drilling tool, and to combine the synthetic data with thereal-time data to form combined data, the synthetic data including,outside values of the real-time data, optimized values for the rate ofpenetration, the weight-on-bit, and the rotations-per-minute; a rate ofpenetration model that is trained using the combined data and that isexecutable by the computing device to use stochastic optimization toproject a value for the rate of penetration per drilling sequence usingrange constraints and to project corresponding values for weight-on-bitand rotations-per-minute, wherein at least one of the data generationmodel or the rate of penetration model comprises a recurrent generativeadversarial network (RGAN); and a control module that is executable bythe computing device to steer the drilling tool using the correspondingvalues for at least one of the weight-on-bit or therotations-per-minute.
 2. The system of claim 1 wherein the syntheticdata includes points outside a domain of the real-time data.
 3. Thesystem of claim 1 wherein at least one of the data generation model orthe rate of penetration model comprises a linear model or a non-linearmodel.
 4. The system of claim 1 wherein at least one of the datageneration model or the rate of penetration model comprises a deepneural network model including a plurality of hidden layers, each hiddenlayer comprising a plurality of nodes.
 5. The system of claim 1 whereinthe stochastic optimization comprises Bayesian optimization and whereinthe drilling tool is steered by controlling the drilling tool to obtainthe value of the rate of penetration by influencing the correspondingvalues for weight-on-bit and rotations-per-minute.
 6. A method ofoperating a drilling tool, the method comprising: generating syntheticdata for rate of penetration, weight-on-bit, and rotations-per-minuteusing real-time data associated with the drilling tool, the syntheticdata including, outside a values of the real-time data, optimized valuesfor the rate of penetration, the weight-on-bit, and therotations-per-minute; combining the synthetic data with the real-timedata to form combined data; training a rate of penetration model usingthe combined data to produce a trained rate of penetration model,wherein the trained rate of penetration model comprises a recurrentgenerative adversarial network (RGAN); projecting a value for the rateof penetration per drilling sequence using stochastic optimization ofthe trained rate of penetration model subject to range constraints;projecting corresponding values for weight-on-bit androtations-per-minute using the trained rate of penetration model; andsteering the drilling tool using the corresponding values for at leastone of the weight-on-bit or the rotations-per-minute.
 7. The method ofclaim 6 wherein the synthetic data includes points outside a domain ofthe real-time data.
 8. The method of claim 6 wherein the trained rate ofpenetration model comprises a linear model or a non-linear model.
 9. Themethod of claim 6 wherein the trained rate of penetration modelcomprises a deep neural network model including a plurality of hiddenlayers, each hidden layer comprising a plurality of nodes.
 10. Themethod of claim 6 wherein the stochastic optimization comprises Bayesianoptimization and wherein the drilling tool is steered by controlling thedrilling tool to obtain the value of the rate of penetration byinfluencing the corresponding values for weight-on-bit androtations-per-minute.
 11. The method of claim 6 further comprisingrepeating the training of the rate of penetration model, the projectingof the value for the rate of penetration per drilling sequence, and theprojecting of corresponding values for weight-on-bit androtations-per-minute for each of a plurality of measured depths.
 12. Anon-transitory computer-readable medium that includes instructions thatare executable by a processing device for causing the processing deviceto perform operations comprising: generating synthetic data for rate ofpenetration, weight-on-bit, and rotations-per-minute using real-timedata associated with a drilling tool, the synthetic data including,outside values of the real-time data, optimized values for the rate ofpenetration, the weight-on-bit, and the rotations-per-minute; combiningthe synthetic data with the real-time data to form combined data;training a rate of penetration model using the combined data to producea trained rate of penetration model, wherein the trained rate ofpenetration model comprises a recurrent generative adversarial network(RGAN); projecting a value for the rate of penetration per drillingsequence using stochastic optimization of the trained rate ofpenetration model subject to range constraints; projecting correspondingvalues for weight-on-bit and rotations-per-minute using the trained rateof penetration model; and outputting commands for steering the drillingtool using the corresponding values for at least one of theweight-on-bit or the rotations-per-minute.
 13. The non-transitorycomputer-readable medium of claim 12 wherein the synthetic data includespoints outside a domain of the real-time data.
 14. The non-transitorycomputer-readable medium of claim 12 wherein the trained rate ofpenetration model comprises a linear model or a non-linear model. 15.The non-transitory computer-readable medium of claim 12 wherein thetrained rate of penetration model comprises a deep neural network modelincluding a plurality of hidden layers, each hidden layer comprising aplurality of nodes.
 16. The non-transitory computer-readable medium ofclaim 12 wherein the stochastic optimization comprises Bayesianoptimization and wherein the drilling tool is steered by controlling thedrilling tool to obtain the value of the rate of penetration byinfluencing the corresponding values for weight-on-bit androtations-per-minute.
 17. The non-transitory computer-readable medium ofclaim 12 wherein the operations further comprise repeating the trainingof the rate of penetration model, the projecting of the value for therate of penetration per drilling sequence, and the projecting ofcorresponding values for weight-on-bit and rotations-per-minute for eachof a plurality of measured depths.